package co.yixiang.modules.activity.service.dto;

import co.yixiang.modules.activity.domain.YxStorePink;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.util.List;

/**
 * @ClassName PinkUserDto
 * @Author hupeng <610796224@qq.com>
 * @Date 2020/6/22
 **/
@Getter
@Setter
@AllArgsConstructor
@NoArgsConstructor
public class PinkUserDto {

    /**拼团的团员*/
    @ApiModelProperty(value = "拼团的团员信息")
    private List<YxStorePink> pinkAll;

    /**单个拼团信息*/
    @ApiModelProperty(value = "单个拼团信息")
    private YxStorePink pinkT;

    /**拼团id集合*/
    @ApiModelProperty(value = "拼团id集合")
    private List<Long> idAll;

    /**拼团用户id集合*/
    @ApiModelProperty(value = "拼团用户id集合")
    private List<Long> uidAll;

    /**还差几人成团*/
    @ApiModelProperty(value = "还差几人成团")
    private Integer count;

    public static PinkUserDtoBuilder builder() {
        return new PinkUserDtoBuilder();
    }

    public static class PinkUserDtoBuilder {
        private List<YxStorePink> pinkAll;
        private YxStorePink pinkT;
        private List<Long> idAll;
        private List<Long> uidAll;
        private Integer count;

        PinkUserDtoBuilder() {
        }

        public PinkUserDtoBuilder pinkAll(List<YxStorePink> pinkAll) {
            this.pinkAll = pinkAll;
            return this;
        }

        public PinkUserDtoBuilder pinkT(YxStorePink pinkT) {
            this.pinkT = pinkT;
            return this;
        }

        public PinkUserDtoBuilder idAll(List<Long> idAll) {
            this.idAll = idAll;
            return this;
        }

        public PinkUserDtoBuilder uidAll(List<Long> uidAll) {
            this.uidAll = uidAll;
            return this;
        }

        public PinkUserDtoBuilder count(Integer count) {
            this.count = count;
            return this;
        }

        public PinkUserDto build() {
            return new PinkUserDto(pinkAll, pinkT, idAll, uidAll, count);
        }

        public String toString() {
            return "PinkUserDto.PinkUserDtoBuilder(pinkAll=" + this.pinkAll + ", pinkT=" + this.pinkT + ", idAll=" + this.idAll + ", uidAll=" + this.uidAll + ", count=" + this.count + ")";
        }
    }
}
